home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / MPI_IO.z / MPI_IO
Encoding:
Text File  |  2002-10-03  |  6.0 KB  |  133 lines

  1.  
  2.  
  3.  
  4. mmmmppppiiii____iiiioooo((((3333))))                                                            mmmmppppiiii____iiiioooo((((3333))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      mmmmppppiiii____iiiioooo - Introduction to the ROMIO implementation of MPI I/O routines
  10.  
  11. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  12.      MPI I/O routines are based on MPI-2 MPI I/O routines, in which derived
  13.      data types are used to express data partitioning.  These MPI-2 I/O
  14.      routines are derived from the ROMIO 1.0.1 source code. The current IRIX
  15.      implementation contains all interfaces defined in the MPI-2 I/O chapter
  16.      of the MPI-2 standard except shared file pointer functions (Sec. 9.4.4),
  17.      split collective data access functions (Sec. 9.4.5), support for file
  18.      interoperability (Sec. 9.5), I/O error handling (Sec. 9.7), and I/O error
  19.      classes (Sec. 9.8). Because shared file pointer functions are not
  20.      supported, the MMMMPPPPIIII____MMMMOOOODDDDEEEE____SSSSEEEEQQQQUUUUEEEENNNNTTTTIIIIAAAALLLL file access mode to MMMMPPPPIIII____FFFFiiiilllleeee____ooooppppeeeennnn is
  21.      also not supported.
  22.  
  23.    LLLLiiiimmmmiiiittttaaaattttiiiioooonnnnssss
  24.      The MPI I/O routines have the following limitations:
  25.  
  26.      *   Beginning with MPT 1.6, the _s_t_a_t_u_s argument is set following all
  27.          read, write, MMMMPPPPIIIIOOOO____TTTTeeeesssstttt, and MMMMPPPPIIIIOOOO____WWWWaaaaiiiitttt functions. Consequently,
  28.          MMMMPPPPIIII____GGGGeeeetttt____ccccoooouuuunnnntttt and MMMMPPPPIIII____GGGGeeeetttt____eeeelllleeeemmmmeeeennnnttttssss will now work when passed the
  29.          status object from these operations.  Previously, they did not.
  30.  
  31.      *   All nonblocking I/O functions use a MMMMPPPPIIIIOOOO____RRRReeeeqqqquuuueeeesssstttt object instead of
  32.          the usual MMMMPPPPIIII____RRRReeeeqqqquuuueeeesssstttt object. Accordingly, two functions, MMMMPPPPIIIIOOOO____TTTTeeeesssstttt
  33.          and MMMMPPPPIIIIOOOO____WWWWaaaaiiiitttt are provided to wait and test on these MMMMPPPPIIIIOOOO____RRRReeeeqqqquuuueeeesssstttt
  34.          objects. They have the same semantics as MMMMPPPPIIII____TTTTeeeesssstttt and MMMMPPPPIIII____WWWWaaaaiiiitttt, as
  35.          shown in the following synopsis:
  36.  
  37.          int MPIO_Test(MPIO_Request *_r_e_q_u_e_s_t, int *_f_l_a_g,
  38.          MPI_Status *_s_t_a_t_u_s);
  39.  
  40.          int MPIO_Wait(MPIO_Request *_r_e_q_u_e_s_t, MPI_Status *_s_t_a_t_u_s);
  41.  
  42.  
  43.          The usual functions, MMMMPPPPIIII____TTTTeeeesssstttt, MMMMPPPPIIII____WWWWaaaaiiiitttt, MMMMPPPPIIII____TTTTeeeessssttttaaaannnnyyyy, and so on, do
  44.          not work for nonblocking I/O.
  45.  
  46.      *   All functions return only two possible error codes:  MMMMPPPPIIII____SSSSUUUUCCCCCCCCEEEESSSSSSSS on
  47.          success and MMMMPPPPIIII____EEEERRRRRRRR____UUUUNNNNKKKKNNNNOOOOWWWWNNNN on failure.
  48.  
  49.      *   End-of-file is not detected.  The individual file pointer is
  50.          increased by the requested amount of data and not by the actual
  51.          amount of data read.  Therefore, after end-of-file is reached,
  52.          MMMMPPPPIIII____FFFFiiiilllleeee____ggggeeeetttt____ppppoooossssiiiittttiiiioooonnnn(3) returns a wrong offset.
  53.  
  54.    DDDDiiiirrrreeeecccctttt IIII////OOOO
  55.      MPI I/O supports direct access to files stored in XFS filesystems. Direct
  56.      access bypasses the system's buffer cache, leading to better performance
  57.      in some specialized cases.  You can enable direct I/O for read and write
  58.      operations by setting the appropriate environment variable(s),
  59.      MPIO_DIRECT_READ or MPIO_DIRECT_WRITE, to the string "TRUE," as in the
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. mmmmppppiiii____iiiioooo((((3333))))                                                            mmmmppppiiii____iiiioooo((((3333))))
  71.  
  72.  
  73.  
  74.      following example:
  75.  
  76.           setenv MPIO_DIRECT_READ TRUE
  77.           setenv MPIO_DIRECT_WRITE TRUE
  78.  
  79.  
  80.    LLLLiiiisssstttt ooooffff RRRRoooouuuuttttiiiinnnneeeessss
  81.      The MPI I/O routines are as follows:
  82.  
  83.           MPI_File_c2f(3)
  84.           MPI_File_close(3)
  85.           MPI_File_delete(3)
  86.           MPI_File_f2c(3)
  87.           MPI_File_get_amode(3)
  88.           MPI_File_get_atomicity(3)
  89.           MPI_File_get_byte_offset(3)
  90.           MPI_File_get_group(3)
  91.           MPI_File_get_info(3)
  92.           MPI_File_get_position(3)
  93.           MPI_File_get_size(3)
  94.           MPI_File_get_type_extent(3)
  95.           MPI_File_get_view(3)
  96.           MPI_File_iread(3)
  97.           MPI_File_iread_at(3)
  98.           MPI_File_iwrite(3)
  99.           MPI_File_iwrite_at(3)
  100.           MPI_File_open(3)
  101.           MPI_File_preallocate(3)
  102.           MPI_File_read(3)
  103.           MPI_File_read_all(3)
  104.           MPI_File_read_at(3)
  105.           MPI_File_read_at_all(3)
  106.           MPI_File_seek(3)
  107.           MPI_File_set_atomicity(3)
  108.           MPI_File_set_info(3)
  109.           MPI_File_set_size(3)
  110.           MPI_File_set_view(3)
  111.           MPI_File_sync(3)
  112.           MPI_File_write(3)
  113.           MPI_File_write_all(3)
  114.           MPI_File_write_at(3)
  115.           MPI_File_write_at_all(3)
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.